package com.info33.platform.doc.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.info33.platform.common.mvc.vo.Result;
import com.info33.platform.doc.dto.DocFileSearchDTO;
import com.info33.platform.doc.dto.DocFileShareDTO;
import com.info33.platform.doc.entity.DocFileShare;
import com.info33.platform.doc.vo.DocFileVO;
import com.info33.platform.system.vo.SysUserVO;

/**
 * @author admin
 */
public interface DocFileShareService extends IService<DocFileShare> {

	/**
	 * 共享文件
	 * @param docFileShareDTO
	 * @return
	 */
	Result<?> shareFile(DocFileShareDTO docFileShareDTO);

	/**
	 * 取消共享
	 * @param fileId
	 * @return
	 */
	Result<?> calcelShare(Long fileId);

	/**
	 * 分页获取我共享的文档
	 * @param page
	 * @param docFileSearchDTO
	 * @param currentUser
	 * @return
	 */
	IPage<DocFileVO> pageSharedFileList(IPage<DocFileVO> page, DocFileSearchDTO docFileSearchDTO, SysUserVO currentUser);

	/**
	 * 分页获取共享给我的文档
	 * @param page
	 * @param docFileSearchDTO
	 * @param currentUser
	 * @return
	 */
	IPage<DocFileVO> pageShareWithMeFile(IPage<DocFileVO> page, DocFileSearchDTO docFileSearchDTO, SysUserVO currentUser);


}